<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport"
        content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />
    <title>REM练习</title>
    <!-- IMPORT CSS -->
    <link rel="stylesheet" href="src/assets/reset.min.css">
    <style>
        /* 
         实现REM响应式布局开发的步骤
           @1 找参照的比例（例如设计稿的比例 -> 一般都是750px），在这个比例下，给予html.fontSize一个初始值
            html {
              font-size: 100px;
              // 750PX的设计稿中，1REM=100PX
              // 未来我们需要把从设计稿中测量出来的尺寸（PX单位）转换为REM单位去设置样式
            }
           @2 我们需要根据当前设备的宽度，计算相对于设计稿750来讲，缩放的比例；从而让REM的转换比例，也跟着缩放「REM和PX的换算比例一改，则所有之前以REM为单位的样式也会跟着缩放」；
           @3 我们一般还会给页面设置最大宽度「750px」，超过这个宽度，不再让REM比例继续变大了；内容居中，左右两边空出来即可！！
         */
        html {
            font-size: 100px;
        }

        html,
        body {
            height: 100%;
            background: #F4F4F4;
        }

        #root {
            margin: 0 auto;
            max-width: 750px;
            height: 100%;
            background: #FFF;
        }

        .box {
            width: 3.28rem;
            height: 1.64rem;
            line-height: 1.64rem;
            text-align: center;
            font-size: .4rem;
            background: lightblue;
        }
    </style>
    <script>
        /* 计算当前设备下，REM和PX的换算比例 */
        (function () {
            const computed = () => {
                let html = document.documentElement,
                    deviceW = html.clientWidth,
                    designW = 750;
                if (deviceW >= designW) {
                    html.style.fontSize = '100px';
                    return;
                }
                let ratio = deviceW * 100 / designW;
                html.style.fontSize = ratio + 'px';
            };
            computed();
            window.addEventListener('resize', computed);
        })();
    </script>
</head>

<body>
    <div id="root">
        <div class="box">
            珠峰培训
        </div>
    </div>
</body>

</html>